import urllib.request
import re

def Bj_CY_messages(num):
    #此处为URL地址 地址中pn后面数字为页码 /后方为搜索条件 此处选择了朝阳区的搜索条件
    url    = 'https://bj.58.com/chaoyang/chuzu/pn%d/?PGTID=0d3090a7-0047-685b-b5d3-6c100cf9d1d5&ClickID=2'%(num)
    #添加了请求头内容为谷歌浏览器的 user-agent
    headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.109 Safari/537.36'}
    #将请求头进行封装
    req    = urllib.request.Request(url, headers=headers)
    #使用封装好的请求头去打开url
    res    = urllib.request.urlopen(req)
    #获取内容并且指定字符编码为utf8
    html   = res.read().decode("utf-8")
    #书写正则匹配
    pat = 'lazy_src="//.*?crop=1.*?<a href="(.*?)".*? >(.*?)</a>.*?<p class="room strongbox">(.*?) &.*?</p>.*?<b class="strongbox">(.*?)</b>元/月'
    #使用正则去匹配内容 并且指定匹配时包括换行符
    dlist = re.findall(pat, html, re.S)
    # print(dlist)
    #部分数据为动态获取 静态页面读取后成为了乱码
    for i in dlist:
        print(i[1]+":"+i[0])
        #此处显示几厅几卫
        #print(i[2])
        #此处数据动态读取 显出格式类似乱码
        # print('每月组金:'+i[3]+'元')


if __name__ == '__main__':
    a = int(input('查询朝阳区第几页租房信息:'))
    Bj_CY_messages(a)
